<!DOCTYPE html>
<html>
<head>
	<title>weakSet</title>
</head>
<body>
<script type="text/javascript">
	
/* weakSet

	1. 不重复的值的集合。但是,但是成员只能是对象

	2. 其次，WeakSet中的对象都是弱引用，即垃圾回收机制不考虑WeakSet对该对象的引用，
	   也就是说，如果其他对象都不再引用该对象，那么垃圾回收机制会自动回收该对象所
	   占用的内存，不考虑该对象还存在于WeakSet之中。这个特点意味着，无法引用WeakSet
	   的成员，因此WeakSet是不可遍历的

	3. WeakSet可以接受一个数组或类似数组的对象作为参数， 例1

	4. 三个实例方法
		- WeakSet.prototype.add(value)：向WeakSet实例添加一个新成员

		- WeakSet.prototype.delete(value)：清除WeakSet实例的指定成员
 	
 		- WeakSet.prototype.has(value)：返回一个布尔值，表示某个值是否在WeakSet
 		  实例之中

*/

// 1. 成员必须是对象
{
	var a = [[1,2], [3,4]];
	var wsa = new WeakSet(a);

	var b = [3, 4];
	var wsb = new WeakSet(b);	// 出错
}

</script>
</body>
</html>